<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of FuncionarioVO
 *
 * @author thales
 */
class UsuarioVO {
    private $id;
    private $nome;
    private $email;
    private $senha;
    
    /**
     * Método get da entidade Funcionário para o atributo id
     * @return Integer 
     */
    public function getId() {
        return $this->id;
    }
    
    /**
     *Método set da entidade Funcionário para o atributo id
     * @param Integer id 
     */
    public function setId($id) {
        if ( !is_numeric($id) && $id < 1 ) {
            throw new Exception('O campo id deve numérico e maior que do que 0!');
        }
        $this->id = $id;
    }

    /**
     * Método get da entidade Funcionário para o atributo nome
     * @return String 
     */
    public function getNome() {
        return $this->nome;
    } 

    /**
     *Método set da entidade Funcionário para o atributo nome
     * @param String $nome 
     */
    public function setNome($nome) {
        if ( strlen($nome) < 3 && strlen($nome) > 255) {
            throw new UserException('A nome deve conter entre 3 e 255 caracteres!');
        }
        $this->nome = $nome;
    }
    /**
     * Método get da entidade Funcionário para o atributo email
     * @return String 
     */
    public function getEmail() {
        return $this->email;
    } 

    /**
     *Método set da entidade Funcionário para o atributo email
     * @param String $email 
     */
    public function setEmail($email, $validar = true) {
        if ( $validar && !preg_match("/^[a-z0-9_\.\-]+@[a-z0-9_\.\-]*[a-z0-9_\-]+\.[a-z]{2,4}$/i",$email) ) {
            throw new UserException('Digite um email válido!');
        }
        if (strlen($email) < 3 && strlen($email) > 255 ) {
            throw new UserException('O email deve conter entre 3 e 255 caracteres!');
        }
        $this->email = $email;
    }
    /**
     * Método get da entidade Funcionário para o atributo senha
     * @return String 
     */
    public function getSenha() {
        return $this->senha;
    } 

    /**
     *Método set da entidade Funcionário para o atributo senha
     * @param String $senha 
     */
    public function setSenha($senha) {
        if ( strlen($senha) < 3 && strlen($senha) > 255 ) {
            throw new UserException('Digite uma senha válida com mais de 3 caracteres!');
        }
        $this->senha = $senha;
    }



}

?>
